home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Collection of Tools & Utilities
/
Collection of Tools and Utilities.iso
/
c
/
tcxl551.zip
/
TCXL_INC.EXE
/
lha
/
INC
/
TCXLHDW.H
< prev
next >
Wrap
Text File
|
1990-10-01
|
6KB
|
101 lines
/*=====[ The TesSeRact(TM) CXL User Interface Development System ]======*
| Copyright (c) 1987-1990, Innovative Data Concepts. All Rights Reserved
|
| This Library is part of IDC's TesSeRact Development Tools product
| line. For information about other IDC products, call 1-215-884-3373.
*----------------------------------------------------------------------*
| <TCXLhdw.h> : Definitions and prototypes for TCXL hardware functions
*----------------------------------------------------------------------*
| PGS : $Id: tcxlhdw.h 5.51 90/10/01 00:00:00 MLM Release Locker: MLM $
| $Log: tcxlhdw.h $
| Revision 5.51 90/10/01 00:00:00 MLM
| TCXL 5.51
|
*======================================================================*/
#ifndef _TCXLhdw_
# define _TCXLhdw_ 1 /* only once! */
# ifndef _TCXLdef_
# include <TCXLdef.h>
# endif
/*- Machine ID's returned by Machid() ----*/
#define IBMPC 0xFF /* IBM PC */
#define IBMPCXT 0xFE /* IBM PC/XT, Portable, old Compaq DeskPro*/
#define IBMPCJR 0xFD /* IBM PCjr */
#define IBMPCAT 0xFC /* IBM PC/AT, XT/286, PS/2 Model 50,60 */
#define IBMPCXT2 0xFB /* IBM PC/XT */
#define IBMPS30 0xFA /* IBM PS/2 model 30 */
#define IBMCONV 0xF9 /* IBM PC Convertible */
#define IBMPS80 0xF8 /* IBM PS/2 model 80 */
#define SPERRYPC 0x30 /* Sperry PC */
#define CPQPORT 0x2D /* old Compaq portable */
#define CPQPLUS 0x9A /* old Compaq plus */
#define HP110 0xB6 /* HP-110 portable */
/*- Hardware option flag bits ---*/
#define HDW_GAM 0x01 /* game-adapter */
#define HDW_NDP 0x02 /* math-coprocessor */
#define HDW_MOU 0x04 /* PS/2 mouse */
#define HDW_MDM 0x08 /* PS/2 modem */
#define HDW_C40 0x10 /* 40-col color */
#define HDW_C80 0x20 /* 80-col color */
#define HDW_M80 0x40 /* 80-col mono */
/*------------------[ Data objects and access macros ]------------------*/
TYP struct Hdw HdwT, *HdwP;
struct Hdw /*-[ Hardware-data object ]---*/
{ BytT hpar; /* 00|00 : parallel-ports */
BytT hser; /* 01|01 : serial-ports */
BytT hdrv; /* 02|02 : floppy-drives */
BytT hflg; /* 03|03 : option flags */
}; /* 04|04 ]--------------------*/
GBL HdwT CDC _HdwCtl; /*- Global Hardware-data object ----------*/
/* access macros after prototypes */
/*------------------------[ Function prototypes ]-----------------------*/
#ifdef __cplusplus /* no mangling, please */
extern "C" {
#endif
ChrP CTYP BiosVer(NOARG); /* Get BIOS version (maybe) */
IntT CTYP ClockCal(NOARG); /* Detect XT clock/cal */
IntT gameport(NOARG); /* Detect gameport */
IntT HdwC40(NOARG); /* TRUE if 40-col color video */
IntT HdwC80(NOARG); /* TRUE if 80-col color video */
IntT HdwDrv(NOARG); /* Get floppy-drive count */
IntT HdwFlg(NOARG); /* Get hardware option flags */
IntT HdwGam(NOARG); /* TRUE if game-adapter present */
IntT HdwM80(NOARG); /* TRUE if 80-col mono video */
IntT HdwMdm(NOARG); /* TRUE if PS/2 modem present */
IntT HdwMou(NOARG); /* TRUE if PS/2 mouse present */
IntT HdwNdp(NOARG); /* TRUE if coprocessor present */
IntT HdwPar(NOARG); /* Get parallel port count */
IntT HdwSer(NOARG); /* Get serial port count */
IntT CTYP MachId(NOARG); /* Get machine-id (maybe) */
IntT mathchip(NOARG); /* Detect NDP */
IntT numflop(NOARG); /* Get floppy-drive count */
IntT numpar(NOARG); /* Get parallel-port count */
IntT numser(NOARG); /* Get serial-port count */
VOID PAS _BioEqp(NOARG); /* Get BIOS equip flags */
#define HdwPar() (_HdwCtl.hpar) /* parallel ports */
#define HdwSer() (_HdwCtl.hser) /* serial ports */
#define HdwDrv() (_HdwCtl.hdrv) /* floppy-drives */
#define HdwFlg() (_HdwCtl.hflg) /* option flags */
#define HdwGam() (0 != (HdwFlg() & HDW_GAM)) /* game-adapter */
#define HdwNdp() (0 != (HdwFlg() & HDW_NDP)) /* math-coprocessor */
#define HdwMou() (0 != (HdwFlg() & HDW_MOU)) /* PS/2 mouse */
#define HdwMdm() (0 != (HdwFlg() & HDW_MDM)) /* PS/2 modem */
#define HdwC40() (0 != (HdwFlg() & HDW_C40)) /* 40-col color */
#define HdwC80() (0 != (HdwFlg() & HDW_C80)) /* 80-col color */
#define HdwM80() (0 != (HdwFlg() & HDW_M80)) /* 80-col mono */
#define gameport() HdwGam() /*- obsolescent CXL functions ------------*/
#define mathchip() HdwNdp()
#define numflop() HdwDrv()
#define numpar() HdwPar()
#define numser() HdwSer()
#ifdef __cplusplus
}
#endif
#endif /* _TCXLhdw_ -- End of TCXLhdw.h */